#ifndef __ZPP_PREPROCESSOR_HPP__
#define __ZPP_PREPROCESSOR_HPP__

namespace zpp {

#define ZPP_SINGLETON(class_name)                                              \
  class_name(const class_name &) = delete;                                     \
  class_name(const class_name &&) = delete;                                    \
  class_name &operator=(const class_name &) = delete;                          \
  class_name &operator=(const class_name &&) = delete;

} // namespace zpp
#endif